Today's advance traffic management (TM) in networking application specific integrated circuits (ASICs) and other networking processors are capable of scheduling a very large number of flows through a multitude of independent or hierarchical channels. It is possible to apply rate limits to flows, group of flows, channels, and various virtual constructs. These rate limits are defined by software to set values. When the capacity of channels is time variant, or when the virtual rate limit construct cannot accurately follow the channel capacity, there is a need to apply feedback mechanism that will change these rate limits according to the actual channel capacity or level of occupancy. Current feedback implementations are normally software based, this is done by measuring buffers/queues attached to the physical channels, analyzing their fullness, applying a control loop to consider past and current buffer fullness and predict future behaviors, and applying correction factors to the TM rate controls in an attempt to bring the buffers to a desired level.
This is a tedious operation that institutes a burden to the controlling central processing unit (CPU) and the TM interface and update mechanism. The TM and the software drivers are not normally designed for such a feedback mechanism to be applied fast and frequently. The update process is relatively slow, and requires expensive CPU resources. Accordingly, the update rate cannot be too frequent (e.g., every 1 second). This results in less than optimal utilization of the channel capacity, higher latency and jitter in the physical channel queues, and risk of overflow and underflow in these queues.
Data Over Cable Service Interface Specification (DOCSIS) 3.0 overlapping bonding group requires hierarchical virtual construct of individual channels and various sizes of groups of channels. The channel groups can be contained in each other or partially overlap each other. While the TM can be configured to schedule packets from a large number of flows through the different channels and group of channels, the TM process and exact decisions cannot be signaled outside the TM. When the packets and flows are later assigned to actual physical channels, there can be divergence from the TM intended assignment and scheduling that will cause some channels to receive too much traffic while other channels are not completely full.
The capacity of a DOCSIS 3.1 channel is not constant, and dependent on the traffic itself. The DOCSIS 3.1 channel concurrently uses multiple profiles which have different modulation depth, resulting in different channel capacity depending on the relative amount of data on each profile. If more data is destined to a deeper modulation profile, the channel capacity increases, and vice versa. Several other varying parameters further increase the possible variation in the channel capacity throughput. The TM has no visibility into the parameters that can change the channel throughput. Thus a rapid feedback mechanism is required to adjust the TM rate shaping limits according to the ongoing capacity changes of the channel.
The capacity of a wireless channel may rapidly change due to variations in the physical conditions in the path between a transmitter and a receiver. The channel modem may employ methods to detect these varying conditions and change the channel transmission parameters to adapt to them, which results in changes to data carrying capacity in the channel. A feedback mechanism is required to adapt rate shaping parameters in the TM scheduling data into the transmitter according to the channel capacity changes.